package org.jeecg.modules.dashboard.service;

import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.dashboard.entity.Dashboard;

import java.math.BigDecimal;
import java.util.Date;

/**
 * @author xuganyue
 * @description 首页仪表盘统计服务接口
 * @date 2025-09-19
 */
public interface DashboardService extends IService<Dashboard> {

    /**
     * 获取总供应商数量
     * @return 总供应商数量
     */
    int getTotalSuppliers();

    /**
     * 获取进行中的项目数量
     * @return 进行中的项目数量
     */
    int getOngoingProjects();

    /**
     * 获取今日开标的数量
     * @param startTime 开始时间（通常是今天 00:00:00）
     * @return 今日开标数量
     */
    int getTodayOpenTenders(Date startTime);

    /**
     * 获取活跃供应商数量（更新时间在指定时间之后的不重复 supplier_id 数量）
     * @param startTime 开始时间
     * @return 活跃供应商数量
     */
    int getActiveSuppliers(Date startTime);

    /**
     * 获取总计中标金额
     * @return 总计金额（BigDecimal）
     */
    BigDecimal getTotalAmount();
}
